/**
 */
package html5.elements.util;

import html5.HtmlElement;

import html5.elements.*;

import org.eclipse.emf.ecore.EObject;
import org.eclipse.emf.ecore.EPackage;

import org.eclipse.emf.ecore.util.Switch;

/**
 * <!-- begin-user-doc -->
 * The <b>Switch</b> for the model's inheritance hierarchy.
 * It supports the call {@link #doSwitch(EObject) doSwitch(object)}
 * to invoke the <code>caseXXX</code> method for each class of the model,
 * starting with the actual class of the object
 * and proceeding up the inheritance hierarchy
 * until a non-null result is returned,
 * which is the result of the switch.
 * <!-- end-user-doc -->
 * @see html5.elements.ElementsPackage
 * @generated
 */
public class ElementsSwitch<T> extends Switch<T> {
	/**
	 * The cached model package
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	protected static ElementsPackage modelPackage;

	/**
	 * Creates an instance of the switch.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public ElementsSwitch() {
		if (modelPackage == null) {
			modelPackage = ElementsPackage.eINSTANCE;
		}
	}

	/**
	 * Checks whether this is a switch for the given package.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @parameter ePackage the package in question.
	 * @return whether this is a switch for the given package.
	 * @generated
	 */
	@Override
	protected boolean isSwitchFor(EPackage ePackage) {
		return ePackage == modelPackage;
	}

	/**
	 * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the first non-null result returned by a <code>caseXXX</code> call.
	 * @generated
	 */
	@Override
	protected T doSwitch(int classifierID, EObject theEObject) {
		switch (classifierID) {
			case ElementsPackage.A: {
				a a = (a)theEObject;
				T result = casea(a);
				if (result == null) result = caseHtmlElement(a);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.ABBR: {
				abbr abbr = (abbr)theEObject;
				T result = caseabbr(abbr);
				if (result == null) result = caseHtmlElement(abbr);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.ADDRESS: {
				address address = (address)theEObject;
				T result = caseaddress(address);
				if (result == null) result = caseHtmlElement(address);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.AREA: {
				area area = (area)theEObject;
				T result = casearea(area);
				if (result == null) result = caseHtmlElement(area);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.ARTICLE: {
				article article = (article)theEObject;
				T result = casearticle(article);
				if (result == null) result = caseHtmlElement(article);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.ASIDE: {
				aside aside = (aside)theEObject;
				T result = caseaside(aside);
				if (result == null) result = caseHtmlElement(aside);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.AUDIO: {
				audio audio = (audio)theEObject;
				T result = caseaudio(audio);
				if (result == null) result = caseHtmlElement(audio);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.B: {
				b b = (b)theEObject;
				T result = caseb(b);
				if (result == null) result = caseHtmlElement(b);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.BASE: {
				base base = (base)theEObject;
				T result = casebase(base);
				if (result == null) result = caseHtmlElement(base);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.BDI: {
				bdi bdi = (bdi)theEObject;
				T result = casebdi(bdi);
				if (result == null) result = caseHtmlElement(bdi);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.BDO: {
				bdo bdo = (bdo)theEObject;
				T result = casebdo(bdo);
				if (result == null) result = caseHtmlElement(bdo);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.BLOCKQUOTE: {
				blockquote blockquote = (blockquote)theEObject;
				T result = caseblockquote(blockquote);
				if (result == null) result = caseHtmlElement(blockquote);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.BODY: {
				body body = (body)theEObject;
				T result = casebody(body);
				if (result == null) result = caseHtmlElement(body);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.BR: {
				br br = (br)theEObject;
				T result = casebr(br);
				if (result == null) result = caseHtmlElement(br);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.BUTTON: {
				button button = (button)theEObject;
				T result = casebutton(button);
				if (result == null) result = caseHtmlElement(button);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.CANVAS: {
				canvas canvas = (canvas)theEObject;
				T result = casecanvas(canvas);
				if (result == null) result = caseHtmlElement(canvas);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.CAPTION: {
				caption caption = (caption)theEObject;
				T result = casecaption(caption);
				if (result == null) result = caseHtmlElement(caption);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.CITE_: {
				cite__ cite__ = (cite__)theEObject;
				T result = casecite__(cite__);
				if (result == null) result = caseHtmlElement(cite__);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.CODE_: {
				code__ code__ = (code__)theEObject;
				T result = casecode__(code__);
				if (result == null) result = caseHtmlElement(code__);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.COL: {
				col col = (col)theEObject;
				T result = casecol(col);
				if (result == null) result = caseHtmlElement(col);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.COLGROUP: {
				colgroup colgroup = (colgroup)theEObject;
				T result = casecolgroup(colgroup);
				if (result == null) result = caseHtmlElement(colgroup);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.COMMAND: {
				command command = (command)theEObject;
				T result = casecommand(command);
				if (result == null) result = caseHtmlElement(command);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.COMMAND_COMMAND: {
				command_command command_command = (command_command)theEObject;
				T result = casecommand_command(command_command);
				if (result == null) result = casecommand(command_command);
				if (result == null) result = caseHtmlElement(command_command);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.COMMAND_RADIO: {
				command_radio command_radio = (command_radio)theEObject;
				T result = casecommand_radio(command_radio);
				if (result == null) result = casecommand(command_radio);
				if (result == null) result = caseHtmlElement(command_radio);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.COMMAND_CHECKBOX: {
				command_checkbox command_checkbox = (command_checkbox)theEObject;
				T result = casecommand_checkbox(command_checkbox);
				if (result == null) result = casecommand(command_checkbox);
				if (result == null) result = caseHtmlElement(command_checkbox);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.DATALIST: {
				datalist datalist = (datalist)theEObject;
				T result = casedatalist(datalist);
				if (result == null) result = caseHtmlElement(datalist);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.DD: {
				dd dd = (dd)theEObject;
				T result = casedd(dd);
				if (result == null) result = caseHtmlElement(dd);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.DEL: {
				del del = (del)theEObject;
				T result = casedel(del);
				if (result == null) result = caseHtmlElement(del);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.DETAILS: {
				details details = (details)theEObject;
				T result = casedetails(details);
				if (result == null) result = caseHtmlElement(details);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.DFN: {
				dfn dfn = (dfn)theEObject;
				T result = casedfn(dfn);
				if (result == null) result = caseHtmlElement(dfn);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.DIV_: {
				div__ div__ = (div__)theEObject;
				T result = casediv__(div__);
				if (result == null) result = caseHtmlElement(div__);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.DL: {
				dl dl = (dl)theEObject;
				T result = casedl(dl);
				if (result == null) result = caseHtmlElement(dl);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.DT: {
				dt dt = (dt)theEObject;
				T result = casedt(dt);
				if (result == null) result = caseHtmlElement(dt);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.EM: {
				em em = (em)theEObject;
				T result = caseem(em);
				if (result == null) result = caseHtmlElement(em);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.EMBED: {
				embed embed = (embed)theEObject;
				T result = caseembed(embed);
				if (result == null) result = caseHtmlElement(embed);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.FIELDSET: {
				fieldset fieldset = (fieldset)theEObject;
				T result = casefieldset(fieldset);
				if (result == null) result = caseHtmlElement(fieldset);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.FIGCAPTION: {
				figcaption figcaption = (figcaption)theEObject;
				T result = casefigcaption(figcaption);
				if (result == null) result = caseHtmlElement(figcaption);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.FIGURE: {
				figure figure = (figure)theEObject;
				T result = casefigure(figure);
				if (result == null) result = caseHtmlElement(figure);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.FOOTER: {
				footer footer = (footer)theEObject;
				T result = casefooter(footer);
				if (result == null) result = caseHtmlElement(footer);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.FORM: {
				form form = (form)theEObject;
				T result = caseform(form);
				if (result == null) result = caseHtmlElement(form);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.H1: {
				h1 h1 = (h1)theEObject;
				T result = caseh1(h1);
				if (result == null) result = caseHtmlElement(h1);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.H2: {
				h2 h2 = (h2)theEObject;
				T result = caseh2(h2);
				if (result == null) result = caseHtmlElement(h2);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.H3: {
				h3 h3 = (h3)theEObject;
				T result = caseh3(h3);
				if (result == null) result = caseHtmlElement(h3);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.H4: {
				h4 h4 = (h4)theEObject;
				T result = caseh4(h4);
				if (result == null) result = caseHtmlElement(h4);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.H5: {
				h5 h5 = (h5)theEObject;
				T result = caseh5(h5);
				if (result == null) result = caseHtmlElement(h5);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.H6: {
				h6 h6 = (h6)theEObject;
				T result = caseh6(h6);
				if (result == null) result = caseHtmlElement(h6);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.HEAD: {
				head head = (head)theEObject;
				T result = casehead(head);
				if (result == null) result = caseHtmlElement(head);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.HEADER: {
				header header = (header)theEObject;
				T result = caseheader(header);
				if (result == null) result = caseHtmlElement(header);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.HGROUP: {
				hgroup hgroup = (hgroup)theEObject;
				T result = casehgroup(hgroup);
				if (result == null) result = caseHtmlElement(hgroup);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.HR: {
				hr hr = (hr)theEObject;
				T result = casehr(hr);
				if (result == null) result = caseHtmlElement(hr);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.HTML: {
				html html = (html)theEObject;
				T result = casehtml(html);
				if (result == null) result = caseHtmlElement(html);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.I: {
				i i = (i)theEObject;
				T result = casei(i);
				if (result == null) result = caseHtmlElement(i);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.IFRAME: {
				iframe iframe = (iframe)theEObject;
				T result = caseiframe(iframe);
				if (result == null) result = caseHtmlElement(iframe);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.IMG: {
				img img = (img)theEObject;
				T result = caseimg(img);
				if (result == null) result = caseHtmlElement(img);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.INPUT: {
				input input = (input)theEObject;
				T result = caseinput(input);
				if (result == null) result = caseHtmlElement(input);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.INS: {
				ins ins = (ins)theEObject;
				T result = caseins(ins);
				if (result == null) result = caseHtmlElement(ins);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.KBD: {
				kbd kbd = (kbd)theEObject;
				T result = casekbd(kbd);
				if (result == null) result = caseHtmlElement(kbd);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.KEYGEN: {
				keygen keygen = (keygen)theEObject;
				T result = casekeygen(keygen);
				if (result == null) result = caseHtmlElement(keygen);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.LABEL_: {
				label__ label__ = (label__)theEObject;
				T result = caselabel__(label__);
				if (result == null) result = caseHtmlElement(label__);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.LEGEND: {
				legend legend = (legend)theEObject;
				T result = caselegend(legend);
				if (result == null) result = caseHtmlElement(legend);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.LI: {
				li li = (li)theEObject;
				T result = caseli(li);
				if (result == null) result = caseHtmlElement(li);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.LINK: {
				link link = (link)theEObject;
				T result = caselink(link);
				if (result == null) result = caseHtmlElement(link);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.MAP: {
				map map = (map)theEObject;
				T result = casemap(map);
				if (result == null) result = caseHtmlElement(map);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.MARK: {
				mark mark = (mark)theEObject;
				T result = casemark(mark);
				if (result == null) result = caseHtmlElement(mark);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.MENU: {
				menu menu = (menu)theEObject;
				T result = casemenu(menu);
				if (result == null) result = caseHtmlElement(menu);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.META: {
				meta meta = (meta)theEObject;
				T result = casemeta(meta);
				if (result == null) result = caseHtmlElement(meta);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.METER: {
				meter meter = (meter)theEObject;
				T result = casemeter(meter);
				if (result == null) result = caseHtmlElement(meter);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.NAV: {
				nav nav = (nav)theEObject;
				T result = casenav(nav);
				if (result == null) result = caseHtmlElement(nav);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.NOSCRIPT: {
				noscript noscript = (noscript)theEObject;
				T result = casenoscript(noscript);
				if (result == null) result = caseHtmlElement(noscript);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.OBJECT: {
				object object = (object)theEObject;
				T result = caseobject(object);
				if (result == null) result = caseHtmlElement(object);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.OL: {
				ol ol = (ol)theEObject;
				T result = caseol(ol);
				if (result == null) result = caseHtmlElement(ol);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.OPTGROUP: {
				optgroup optgroup = (optgroup)theEObject;
				T result = caseoptgroup(optgroup);
				if (result == null) result = caseHtmlElement(optgroup);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.OPTION: {
				option option = (option)theEObject;
				T result = caseoption(option);
				if (result == null) result = caseHtmlElement(option);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.OUTPUT: {
				output output = (output)theEObject;
				T result = caseoutput(output);
				if (result == null) result = caseHtmlElement(output);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.P: {
				p p = (p)theEObject;
				T result = casep(p);
				if (result == null) result = caseHtmlElement(p);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.PARAM: {
				param param = (param)theEObject;
				T result = caseparam(param);
				if (result == null) result = caseHtmlElement(param);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.PRE: {
				pre pre = (pre)theEObject;
				T result = casepre(pre);
				if (result == null) result = caseHtmlElement(pre);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.PROGRESS: {
				progress progress = (progress)theEObject;
				T result = caseprogress(progress);
				if (result == null) result = caseHtmlElement(progress);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.Q: {
				q q = (q)theEObject;
				T result = caseq(q);
				if (result == null) result = caseHtmlElement(q);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.RP: {
				rp rp = (rp)theEObject;
				T result = caserp(rp);
				if (result == null) result = caseHtmlElement(rp);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.RT: {
				rt rt = (rt)theEObject;
				T result = casert(rt);
				if (result == null) result = caseHtmlElement(rt);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.RUBY: {
				ruby ruby = (ruby)theEObject;
				T result = caseruby(ruby);
				if (result == null) result = caseHtmlElement(ruby);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.S: {
				s s = (s)theEObject;
				T result = cases(s);
				if (result == null) result = caseHtmlElement(s);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.SAMP: {
				samp samp = (samp)theEObject;
				T result = casesamp(samp);
				if (result == null) result = caseHtmlElement(samp);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.SCRIPT: {
				script script = (script)theEObject;
				T result = casescript(script);
				if (result == null) result = caseHtmlElement(script);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.SECTION: {
				section section = (section)theEObject;
				T result = casesection(section);
				if (result == null) result = caseHtmlElement(section);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.SELECT: {
				select select = (select)theEObject;
				T result = caseselect(select);
				if (result == null) result = caseHtmlElement(select);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.SMALL: {
				small small = (small)theEObject;
				T result = casesmall(small);
				if (result == null) result = caseHtmlElement(small);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.SOURCE: {
				source source = (source)theEObject;
				T result = casesource(source);
				if (result == null) result = caseHtmlElement(source);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.SPAN_: {
				span__ span__ = (span__)theEObject;
				T result = casespan__(span__);
				if (result == null) result = caseHtmlElement(span__);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.STRONG: {
				strong strong = (strong)theEObject;
				T result = casestrong(strong);
				if (result == null) result = caseHtmlElement(strong);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.STYLE_: {
				style__ style__ = (style__)theEObject;
				T result = casestyle__(style__);
				if (result == null) result = caseHtmlElement(style__);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.SUB: {
				sub sub = (sub)theEObject;
				T result = casesub(sub);
				if (result == null) result = caseHtmlElement(sub);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.SUMMARY_: {
				summary__ summary__ = (summary__)theEObject;
				T result = casesummary__(summary__);
				if (result == null) result = caseHtmlElement(summary__);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.SUP: {
				sup sup = (sup)theEObject;
				T result = casesup(sup);
				if (result == null) result = caseHtmlElement(sup);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.TABLE: {
				table table = (table)theEObject;
				T result = casetable(table);
				if (result == null) result = caseHtmlElement(table);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.TBODY: {
				tbody tbody = (tbody)theEObject;
				T result = casetbody(tbody);
				if (result == null) result = caseHtmlElement(tbody);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.TD: {
				td td = (td)theEObject;
				T result = casetd(td);
				if (result == null) result = caseHtmlElement(td);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.TEXTAREA: {
				textarea textarea = (textarea)theEObject;
				T result = casetextarea(textarea);
				if (result == null) result = caseHtmlElement(textarea);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.TFOOT: {
				tfoot tfoot = (tfoot)theEObject;
				T result = casetfoot(tfoot);
				if (result == null) result = caseHtmlElement(tfoot);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.TH: {
				th th = (th)theEObject;
				T result = caseth(th);
				if (result == null) result = caseHtmlElement(th);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.THEAD: {
				thead thead = (thead)theEObject;
				T result = casethead(thead);
				if (result == null) result = caseHtmlElement(thead);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.TIME: {
				time time = (time)theEObject;
				T result = casetime(time);
				if (result == null) result = caseHtmlElement(time);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.TITLE_: {
				title__ title__ = (title__)theEObject;
				T result = casetitle__(title__);
				if (result == null) result = caseHtmlElement(title__);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.TR: {
				tr tr = (tr)theEObject;
				T result = casetr(tr);
				if (result == null) result = caseHtmlElement(tr);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.TRACK: {
				track track = (track)theEObject;
				T result = casetrack(track);
				if (result == null) result = caseHtmlElement(track);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.U: {
				u u = (u)theEObject;
				T result = caseu(u);
				if (result == null) result = caseHtmlElement(u);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.UL: {
				ul ul = (ul)theEObject;
				T result = caseul(ul);
				if (result == null) result = caseHtmlElement(ul);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.VAR: {
				var var = (var)theEObject;
				T result = casevar(var);
				if (result == null) result = caseHtmlElement(var);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.VIDEO: {
				video video = (video)theEObject;
				T result = casevideo(video);
				if (result == null) result = caseHtmlElement(video);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.WBR: {
				wbr wbr = (wbr)theEObject;
				T result = casewbr(wbr);
				if (result == null) result = caseHtmlElement(wbr);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case ElementsPackage.PERCENT: {
				percent percent = (percent)theEObject;
				T result = casepercent(percent);
				if (result == null) result = caseHtmlElement(percent);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			default: return defaultCase(theEObject);
		}
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>a</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>a</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T casea(a object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>abbr</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>abbr</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T caseabbr(abbr object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>address</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>address</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T caseaddress(address object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>area</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>area</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T casearea(area object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>article</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>article</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T casearticle(article object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>aside</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>aside</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T caseaside(aside object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>audio</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>audio</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T caseaudio(audio object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>b</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>b</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T caseb(b object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>base</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>base</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T casebase(base object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>bdi</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>bdi</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T casebdi(bdi object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>bdo</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>bdo</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T casebdo(bdo object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>blockquote</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>blockquote</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T caseblockquote(blockquote object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>body</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>body</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T casebody(body object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>br</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>br</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T casebr(br object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>button</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>button</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T casebutton(button object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>canvas</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>canvas</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T casecanvas(canvas object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>caption</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>caption</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T casecaption(caption object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>cite </em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>cite </em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T casecite__(cite__ object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>code </em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>code </em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T casecode__(code__ object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>col</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>col</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T casecol(col object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>colgroup</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>colgroup</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T casecolgroup(colgroup object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>command</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>command</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T casecommand(command object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>command command</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>command command</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T casecommand_command(command_command object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>command radio</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>command radio</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T casecommand_radio(command_radio object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>command checkbox</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>command checkbox</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T casecommand_checkbox(command_checkbox object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>datalist</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>datalist</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T casedatalist(datalist object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>dd</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>dd</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T casedd(dd object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>del</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>del</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T casedel(del object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>details</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>details</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T casedetails(details object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>dfn</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>dfn</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T casedfn(dfn object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>div </em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>div </em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T casediv__(div__ object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>dl</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>dl</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T casedl(dl object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>dt</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>dt</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T casedt(dt object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>em</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>em</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T caseem(em object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>embed</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>embed</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T caseembed(embed object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>fieldset</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>fieldset</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T casefieldset(fieldset object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>figcaption</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>figcaption</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T casefigcaption(figcaption object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>figure</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>figure</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T casefigure(figure object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>footer</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>footer</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T casefooter(footer object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>form</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>form</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T caseform(form object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>h1</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>h1</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T caseh1(h1 object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>h2</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>h2</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T caseh2(h2 object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>h3</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>h3</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T caseh3(h3 object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>h4</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>h4</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T caseh4(h4 object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>h5</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>h5</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T caseh5(h5 object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>h6</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>h6</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T caseh6(h6 object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>head</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>head</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T casehead(head object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>header</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>header</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T caseheader(header object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>hgroup</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>hgroup</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T casehgroup(hgroup object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>hr</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>hr</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T casehr(hr object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>html</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>html</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T casehtml(html object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>i</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>i</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T casei(i object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>iframe</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>iframe</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T caseiframe(iframe object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>img</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>img</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T caseimg(img object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>input</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>input</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T caseinput(input object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>ins</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>ins</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T caseins(ins object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>kbd</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>kbd</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T casekbd(kbd object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>keygen</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>keygen</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T casekeygen(keygen object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>label </em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>label </em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T caselabel__(label__ object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>legend</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>legend</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T caselegend(legend object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>li</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>li</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T caseli(li object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>link</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>link</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T caselink(link object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>map</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>map</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T casemap(map object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>mark</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>mark</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T casemark(mark object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>menu</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>menu</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T casemenu(menu object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>meta</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>meta</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T casemeta(meta object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>meter</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>meter</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T casemeter(meter object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>nav</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>nav</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T casenav(nav object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>noscript</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>noscript</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T casenoscript(noscript object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>object</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>object</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T caseobject(object object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>ol</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>ol</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T caseol(ol object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>optgroup</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>optgroup</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T caseoptgroup(optgroup object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>option</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>option</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T caseoption(option object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>output</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>output</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T caseoutput(output object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>p</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>p</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T casep(p object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>param</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>param</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T caseparam(param object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>pre</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>pre</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T casepre(pre object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>progress</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>progress</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T caseprogress(progress object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>q</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>q</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T caseq(q object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>rp</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>rp</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T caserp(rp object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>rt</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>rt</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T casert(rt object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>ruby</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>ruby</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T caseruby(ruby object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>s</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>s</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T cases(s object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>samp</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>samp</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T casesamp(samp object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>script</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>script</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T casescript(script object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>section</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>section</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T casesection(section object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>select</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>select</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T caseselect(select object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>small</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>small</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T casesmall(small object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>source</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>source</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T casesource(source object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>span </em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>span </em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T casespan__(span__ object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>strong</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>strong</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T casestrong(strong object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>style </em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>style </em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T casestyle__(style__ object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>sub</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>sub</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T casesub(sub object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>summary </em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>summary </em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T casesummary__(summary__ object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>sup</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>sup</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T casesup(sup object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>table</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>table</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T casetable(table object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>tbody</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>tbody</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T casetbody(tbody object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>td</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>td</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T casetd(td object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>textarea</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>textarea</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T casetextarea(textarea object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>tfoot</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>tfoot</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T casetfoot(tfoot object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>th</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>th</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T caseth(th object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>thead</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>thead</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T casethead(thead object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>time</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>time</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T casetime(time object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>title </em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>title </em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T casetitle__(title__ object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>tr</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>tr</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T casetr(tr object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>track</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>track</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T casetrack(track object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>u</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>u</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T caseu(u object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>ul</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>ul</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T caseul(ul object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>var</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>var</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T casevar(var object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>video</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>video</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T casevideo(video object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>wbr</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>wbr</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T casewbr(wbr object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>percent</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>percent</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T casepercent(percent object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>Html Element</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>Html Element</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T caseHtmlElement(HtmlElement object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>EObject</em>'.
	 * <!-- begin-user-doc -->
	 * This implementation returns null;
	 * returning a non-null result will terminate the switch, but this is the last case anyway.
	 * <!-- end-user-doc -->
	 * @param object the target of the switch.
	 * @return the result of interpreting the object as an instance of '<em>EObject</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject)
	 * @generated
	 */
	@Override
	public T defaultCase(EObject object) {
		return null;
	}

} //ElementsSwitch
